package com.yinhe.music.yhmusic.songmenu.contract;

import com.yinhe.music.yhmusic.base.IBaseView;
import com.yinhe.music.yhmusic.model.SongMenuList;

/**
 * SongMenuActivity 契约类
 *
 * @author 何晓华
 */
public interface ISongMenuListContract {
    interface ISongMenuListPresenter {

        /**
         * 获取歌单列表
         *
         * @param page     当前页
         * @param pageSize 每页大小
         * @param type     排序 new/hot
         */
        void getMenuList(int page, int pageSize, String type);

        /**
         * 获取搜索歌单列表
         *
         * @param page     当前页
         * @param pageSize 每页大小
         * @param keyword  关键词
         */
        void getSearchList(int page, int pageSize, String keyword);

        /**
         * 获取用户歌单
         * @param userId 用户id
         * @param page     当前页
         * @param pageSize 每页大小
         */
        void getUserSongMenu(String userId, int page, int pageSize);

    }

    interface ISongMenuListView extends IBaseView {

        /**
         * 更新歌单列表UI
         *
         * @param songMenuList 歌单列表信息
         */
        void setSongMenuListUI(SongMenuList songMenuList);

        /**
         * 加载更多失败
         */
        void setLoadMoreFailUI();
    }

}
